package thinkingJava.chapter15;

class GenericSetter<T> {
	void set(T arg) {
		System.out.println("GenericSetter.set(Base)");
	}
}
class DerivedGS extends GenericSetter<Base> {
	void set(Derived d) {
		System.out.println("DerivedGS.set(Derived)");
	}
}
public class PlainGenericInheritance {
	public static void main(String[] args) {
		Base b = new Base();
		Derived d = new Derived();
		DerivedGS dgs = new DerivedGS();
		dgs.set(b);
		dgs.set(d);
	}
}
